home *** CD-ROM | disk | FTP | other *** search
/ The Original Shareware 1.1 / The Original Shareware (WeMake CDs)(Volume 1.1)(CDs, Inc)(1993).iso / 32 / cellar.zip / CELLAR.ASC next >
Text File  |  1988-08-17  |  42KB  |  1,752 lines

  1. *dCELLAR.CMD:  Routine for finding or creating wine entry for personal
  2. *              collection, then adding commentary.
  3. *COPYRIGHT (C) 1985 By Stephen L. Haynes Associates, Inc.
  4. *REV:  11/23/85
  5.  
  6. *FOLLOWING IS STRUCTURE FOR CELLAR.DBF
  7.  
  8. * NUMBER    C 004
  9. * KEY       C 010
  10. * VINEYARD  C 040
  11. * NAME      C 040
  12. * SPECIAL   C 040
  13. * APPELL    C 030
  14. * REGION    C 006
  15. * TYPE      C 006
  16.  
  17. * FOLLOWING IS STRUCTURE FOR CELLSTOR.DBF
  18.  
  19. * NUMBER    C 004 000
  20. * YEAR      C 002 000
  21. * IMPORTER  C 020 000
  22. * PUR:STORE C 040 000
  23. * PUR:DATE  C 008 000
  24. * PRICE     N 006 002
  25. * VALUE     N 006 002
  26. * BOTTLES   N 002 000
  27. * RACKED    N 001 000
  28. * BEGIN     C 004 000
  29. * END       C 005 000
  30. * BIN       C 007 000
  31. * CONTINUE  L 001 000
  32.  
  33. * FOLLOWING IS STRUCTURE FOR VINTAGE.DBF
  34.  
  35. * NUMBER    C 004 000
  36. * YEAR      C 002 000
  37. * DATE      C 008 000
  38. * FORMAT    C 010 000
  39. * CLARITY   N 003 001
  40. * COLOR     N 003 001
  41. * LOOKS1    C 050 000
  42. * LOOKS2    C 050 000
  43. * BOUQUET   N 003 001
  44. * ACESCENCE N 003 001
  45. * NOSE1     C 050 000
  46. * NOSE2     C 050 000
  47. * NOSE3     C 050 000
  48. * ACID      N 003 001
  49. * SWEET     N 003 001
  50. * BODY      N 003 001
  51. * FLAVOR    N 003 001
  52. * TANNIN    N 003 001
  53. * FINISH    N 003 001
  54. * TASTE1    C 050 000
  55. * TASTE2    C 050 000
  56. * TASTE3    C 050 000
  57. * GENERAL   N 003 001
  58. * OVERALL1  C 050 000
  59. * OVERALL2  C 050 000
  60. * SCORE     N 004 001
  61. * POSTSCRIPTC 050 000
  62.  
  63. * NOTE:  THE FOREGOING THREE FILE STRUCTURE DEFINITIONS MAY BE DELETED
  64. *        ONCE THE STRUCTURES HAVE BEEN CREATED.
  65.  
  66. * PROGRAM BEGINS HERE:
  67.  
  68. CLEAR
  69. SET TALK OFF
  70. SET EXACT OFF
  71.  
  72. USE Cellar
  73.  
  74. IF # = 0
  75.     USE CellStor
  76.     INDEX ON Number+Year TO CellStor
  77.     USE Cellar
  78.     STORE 0 TO FinalWine
  79.     INDEX ON Key TO Cell/Key
  80.     INDEX ON Number TO Cell/Num
  81. ELSE
  82.     GOTO BOTTOM
  83.     STORE VAL(Number) TO FinalWine
  84.     SET INDEX TO Cell/Key,Cell/Num
  85. ENDIF
  86.  
  87. STORE '1' TO Rack
  88.  
  89. SELECT SECONDARY
  90. USE Vintage
  91.  
  92. IF # = 0
  93.     INDEX ON Number+Year TO Vntg/Key
  94. ELSE
  95.     SET INDEX TO Vntg/Key
  96. ENDIF
  97.  
  98. STORE T TO Status
  99. SELECT PRIMARY
  100.  
  101. STORE T TO GoOn
  102.  
  103. DO WHILE GoOn
  104.  
  105.     DO WineFind
  106.  
  107.     IF WineKey = '  '
  108.         STORE F TO GoOn
  109.         LOOP
  110.     ENDIF        
  111.  
  112.     IF NoHit
  113.  
  114.         STORE F TO Choice
  115.  
  116.         @ 12,23 SAY "DO YOU WISH TO TRY A DIFFERENT KEY?"
  117.         @ 14,40 GET Choice PICTURE '!'
  118.         READ
  119.  
  120.         IF Choice
  121.             LOOP
  122.         ENDIF
  123.  
  124.         DO NewWine
  125.     ENDIF
  126.  
  127.     DO WineData
  128.  
  129.     STORE T TO GoOn
  130. ENDDO
  131.  
  132. ERASE
  133.  
  134. IF LEN(Rack) > 1
  135.  
  136.     SELECT SECONDARY
  137.     USE CellStor INDEX CellStor
  138.  
  139.     DO WHILE LEN(Rack) > 1
  140.  
  141.         STORE $(Rack,1,6) TO Next
  142.         STORE $(Rack,7) TO Rack
  143.  
  144.         FIND '&Next'
  145.  
  146.         IF # <> 0
  147.  
  148.             LOCATE NEXT 10 FOR Racked > 0
  149.  
  150.             IF Number + Year = Next
  151.  
  152.                 REPLACE Racked WITH Racked - 1
  153.             ELSE
  154.                 ? 'KEY/YEAR NOT FOUND:  '+Next
  155.             ENDIF
  156.         ENDIF
  157.     ENDDO
  158.  
  159.     WAIT
  160. ENDIF
  161.  
  162. CLEAR
  163. RETURN
  164.  
  165. * WINEFIND.CMD: Sub-routine to find an individual entry in the data base.
  166. * COPYRIGHT (C) 1985 By Stephen L. Haynes Associates, Inc.
  167. * REV:  11/23/85
  168.  
  169. ERASE
  170. STORE '          ' TO WineKey
  171. STORE '  ' TO Annum
  172.  
  173. @  3,20 SAY "ENTER NAME KEY OF WINE TO BE SEARCHED FOR:"
  174. @  5,35 GET WineKey PICTURE '!!!!!!!!!!'
  175.  
  176. @  8,27 SAY "ENTER VINTAGE YEAR CONCERNED"
  177. @ 10,39 GET Annum PICTURE '!!'
  178. @ 14,19 SAY "'NV' FOR NON-VINTAGE"
  179. @ 16,19 SAY "IF NO ENTRY, SYSTEM WILL DISPLAY SELECTIONS"
  180. @ 17,19 SAY "IN STORAGE AND ALL TASTING NOTES"
  181. @ 20,19 SAY "(BLANKS IN BOTH FIELDS TERMINATES SESSIONS)"
  182. READ
  183.  
  184. IF WineKey = '  '
  185.     RETURN
  186. ENIF
  187.  
  188. STORE T TO NoHit
  189. STORE 0 TO NumHits1
  190. STORE F TO SingleHit
  191.  
  192. FIND &WineKey
  193.  
  194. IF # = 0
  195.     STORE N TO NameFound
  196. ELSE
  197.     STORE Y TO NameFound
  198. ENDIF
  199.  
  200. IF NameFound
  201.  
  202.     SKIP
  203.  
  204.     IF Key <> WineKey
  205.  
  206.         SKIP -1
  207.  
  208.         STORE ' ' TO Pick
  209.         STORE T TO SingleHit
  210.  
  211.         ERASE
  212.         @  1,24 SAY "IS THE FOLLOWING THE PROPER ENTRY?"
  213.         @  3, 1 GET Pick PICTURE '!'
  214.         @  3, 4 SAY $(TRIM(Vineyard) + ' ' + TYPE + ' ' + TRIM(Name),1,74)
  215.         @  4, 6 SAY $(TRIM(Special) + ' (' + TRIM(Appell) + ')',1,72)
  216.         READ
  217.  
  218.         IF Pick <> 'N' .AND. Pick <> ' '
  219.             ERASE
  220.             STORE F TO NoHit
  221.             RETURN
  222.         ELSE
  223.             STORE N TO NameFound
  224.         ENDIF
  225.     ELSE
  226.         IF .NOT. EOF
  227.             SKIP -1
  228.         ENDIF
  229.  
  230.         STORE N TO Hit
  231.  
  232.         DO WHILE .NOT. Hit
  233.  
  234.             DO WHILE Key = WineKey
  235.  
  236.                 STORE 3 TO Line
  237.                 STORE 1 TO Counter
  238.  
  239.                 ERASE
  240.                 @  1,19 SAY "ARE ANY OF THE FOLLOWING THE PROPER ENTRY?"
  241.  
  242.                 DO WHILE COUNTER < 10 .AND. Key = WineKey
  243.  
  244.                     STORE STR(Counter,1) TO Tag
  245.                     STORE ' ' TO Hit&Tag
  246.                     STORE # TO Data&Tag
  247.  
  248.                     @  Line  , 1 GET Hit&Tag PICTURE '!'
  249.                     @  Line  , 4 SAY $(TRIM(Vineyard) + ' ' +;
  250.                          TYPE + ' ' + TRIM(Name),1,74)
  251.                     @  Line+1, 6 SAY $(TRIM(Special) + ' (' +;
  252.                          TRIM(Appell) + ')',1,72)
  253.  
  254.                     STORE Line + 2 TO Line
  255.                     STORE Counter + 1 to Counter
  256.                     SKIP
  257.  
  258.                 ENDDO
  259.                 READ
  260.  
  261.                 STORE Counter TO LastCount
  262.                 STORE LastCount + NumHits1 TO NumHits1
  263.  
  264.                 STORE 1 TO Counter
  265.  
  266.                 DO WHILE Counter < LastCount
  267.  
  268.                     STORE STR(Counter,1) TO Tag
  269.  
  270.                     IF Hit&Tag <> ' '
  271.                         STORE Data&Tag to X
  272.                         GOTO X
  273.                         ERASE
  274.                         STORE F TO NoHit
  275.                         RETURN
  276.                     ENDIF
  277.  
  278.                     STORE Counter + 1 TO Counter
  279.  
  280.                 ENDDO
  281.             ENDDO
  282.  
  283.             IF Key <> WineKey
  284.                 STORE N TO NameFound
  285.                 STORE Y TO Hit
  286.             ENDIF
  287.         ENDDO
  288.     ENDIF
  289. ENDIF
  290.  
  291. ERASE
  292. @ 10,21 SAY "NO DATA BASE ENTRY SATISFIES THIS SEARCH"
  293. RETURN
  294.  
  295. * NEWWINE.CMD:  Subroutine to enter new vineyard information
  296. * COPYRIGHT (C) 1982 By Stephen L. Haynes Associates, Inc.
  297. * REV:  11/11/82
  298.  
  299. APPEND BLANK
  300.  
  301. STORE FinalWine + 1 TO FinalWine
  302.  
  303. DO CASE
  304.  
  305.     CASE FinalWine < 10
  306.         REPLACE Number WITH STR(FinalWine,1)
  307.     CASE FinalWine < 100
  308.         REPLACE Number WITH STR(FinalWine,2)
  309.     CASE FinalWine < 1000
  310.         REPLACE Number WITH STR(FinalWine,3)
  311.     CASE FinalWine < 10000
  312.         REPLACE Number WITH STR(FinalWine,4)
  313.     OTHERWISE
  314.         ERASE
  315.         @  8,14 SAY "YOU HAVE TOO MANY DIFFERENT WINE NAMES FOR THIS SYSTEM."
  316.         @ 10,13 SAY "CONTACT STEPHEN L. HAYNES ASSOCIATES, INC., FOR SUPPORT"
  317.         @ 18,1
  318.         WAIT
  319.         CLEAR
  320.         RETURN
  321. ENDCASE
  322.  
  323. REPLACE Key WITH WineKey
  324.  
  325. ERASE
  326. SET FORMAT TO WineScrn
  327. READ
  328. SET FORMAT TO SCREEN
  329.  
  330. RETURN
  331.  
  332. * WINESCRN.FMT: Screen format for entry of basic wine information.
  333. * COPYRIGHT (C) 1985 By Stephen L. Haynes Associates, Inc.
  334. *
  335. @  2,32 SAY "WINE ENTRY SCREEN"
  336. @  5,24 SAY "NUMBER"
  337. @  5,31 SAY Number
  338. @  5,47 SAY "KEY"
  339. @  5,51 GET Key PICTURE '!!!!!!!!!!'
  340. @  8, 7 SAY "VINEYARD  >>>>>"
  341. @  8,23 GET Vineyard
  342. @ 10, 7 SAY "NAME  >>>>>>>>>"
  343. @ 10,23 GET Name
  344. @ 11, 7 SAY "SPECIAL  >>>>>>"
  345. @ 11,23 GET Special
  346. @ 12, 7 SAY "APPELLATION  >>"
  347. @ 12,23 GET Appell
  348. @ 14, 7 SAY "TYPE  >>>>>>>>>"
  349. @ 14,23 GET Type PICTURE '!!!!!!'
  350. @ 15, 7 SAY "REGION  >>>>>>>"
  351. @ 15,23 GET Region PICTURE '!!!!!!'
  352.  
  353. * WINEDATA.CMD:  Subroutine to enter cellar data or tasting notes
  354. * COPYRIGHT (C) 1985 By Stephen L. Haynes Associates, Inc.
  355. * REV:  11/23/85
  356.  
  357. SET DELETE ON
  358.  
  359. STORE TRIM(Vineyard) + ' ' + Type + ' ' + TRIM(Name) + ' ' + TRIM(Special);
  360.     + ' (' + TRIM(Appell) + ')' TO Line1
  361.  
  362. DO CASE
  363.     CASE LEN(Line1) < 73
  364.         STORE ' ' TO Line2
  365.     CASE @(' ',$(Line1,65,8)) <> 0
  366.         STORE $(Line1,65 + @(' ',$(Line1,65,8))) TO Line2
  367.         STORE $(Line1,1,65 + @(' ',$(Line1,65,8)) - 2) TO Line1
  368.     CASE @(' ',$(Line1,60,5)) <> 0
  369.         STORE $(Line1,60 + @(' ',$(Line1,60,5))) TO Line2
  370.         STORE $(Line1,1,60 + @(' ',$(Line1,60,5)) - 2) TO Line1
  371.     CASE @(' ',$(Line1,55,5)) <> 0
  372.         STORE $(Line1,55 + @(' ',$(Line1,55,5))) TO Line2
  373.         STORE $(Line1,1,55 + @(' ',$(Line1,55,5)) - 2) TO Line1
  374.     CASE @(' ',$(Line1,50,5)) <> 0
  375.         STORE $(Line1,50 + @(' ',$(Line1,50,5))) TO Line2
  376.         STORE $(Line1,1,50 + @(' ',$(Line1,50,5)) - 2) TO Line1
  377.     OTHERWISE
  378.         STORE $(TRIM(Vineyard) + ' ' + Type + ' ' + TRIM(Name),1,72);
  379.             TO Line1
  380.         STORE $(TRIM(Special) + ' (' + TRIM(Appell) + ')',1,72);
  381.             TO Line2
  382. ENDCASE
  383.  
  384. ERASE
  385.  
  386. IF Annum = '  '
  387.  
  388.     DO SelecLst
  389. ENDIF
  390.  
  391. STORE Number + Annum TO Target
  392.  
  393. STORE ' ' TO Choice
  394.  
  395. DO WHILE Choice <> 'Z'
  396.  
  397.     ERASE
  398.     @  2, 5 SAY Annum + ' ' + Line1
  399.     @  3,10 SAY Line2
  400.     @  6,22 SAY "SELECT ONE OF THE FOLLOWING FUNCTIONS:"
  401.     @  8,24 SAY "A.  REVIEW OR MODIFY PRINCIPAL CATALOG ENTRY"
  402.     @  9,24 SAY "B.  REVIEW OR MODIFY CELLAR STORAGE RECORD"
  403.     @ 10,24 SAY "C.  ADD TASTING NOTES OR COMMENTARY"
  404.     @ 11,24 SAY "D.  REVIEW TASTING NOTES OR COMMENTARY"
  405.     @ 12,24 SAY "E.  CHANGE YEAR -- SAME WINE"
  406.     @ 16,24 SAY "Z.  NO MORE FUNCTIONS"
  407.     @ 18,24 GET Choice PICTURE '!'
  408.     READ NOUPDATE
  409.     ERASE
  410.  
  411.     DO CASE
  412.  
  413.         CASE Choice = 'Z'
  414.         RETURN
  415.  
  416.         CASE Choice = 'C'
  417.  
  418.         SELECT SECONDARY
  419.         IF .NOT. Status
  420.             USE Vintage INDEX Vntg/Key
  421.             STORE T TO Status
  422.         ENDIF
  423.  
  424.         DO AddCmt
  425.  
  426.         CASE Choice = 'B'
  427.  
  428.         SELECT SECONDARY
  429.         IF Status
  430.             USE CellStor INDEX CellStor
  431.             STORE F TO Status
  432.         ENDIF
  433.  
  434.         FIND '&Target'
  435.  
  436.         IF # <> 0
  437.  
  438.             DO ChngRcrd
  439.  
  440.         ELSE
  441.  
  442.             ERASE
  443.             STORE F TO TryAgain
  444.             @  6, 6 SAY "YOU MAY HAVE ENTERED THE WRONG VINTAGE, SINCE NO ENTRY HAS BEEN FOUND"
  445.             @  8,14 SAY "DO YOU WISH TO PROCEED, CREATING A NEW STORAGE RECORD?"
  446.             @ 10,40 GET TryAgain PICTURE '!'
  447.             READ NOUPDATE
  448.  
  449.             IF TryAgain
  450.  
  451.                 APPEND BLANK
  452.                 REPLACE Number WITH P.Number
  453.                 REPLACE Year WITH Annum
  454.                 REPLACE Continue WITH T
  455.                 SET CARRY ON
  456.  
  457.                 DO WHILE Continue
  458.  
  459.                     REPLACE Continue WITH F
  460.  
  461.                     ERASE
  462.                     SET FORMAT TO CellCard
  463.                     READ NOUPDATE
  464.                     SET FORMAT TO SCREEN
  465.  
  466.                     IF Continue
  467.                         APPEND BLANK
  468.                     ENDIF
  469.                 ENDDO
  470.  
  471.                 SET CARRY OFF
  472.             ENDIF
  473.         ENDIF
  474.  
  475.         CASE Choice = 'A'
  476.  
  477.         ERASE
  478.         SET FORMAT TO WineScrn
  479.         READ
  480.         SET FORMAT TO SCREEN
  481.  
  482.         STORE TRIM(Vineyard) + ' ' + Type + ' ' + TRIM(Name) + ' ';
  483.             + TRIM(Special) + ' (' + TRIM(Appell) + ')' TO Line1
  484.  
  485.         DO CASE
  486.             CASE LEN(Line1) < 73
  487.             STORE ' ' TO Line2
  488.             CASE @(' ',$(Line1,65,8)) <> 0
  489.             STORE $(Line1,65 + @(' ',$(Line1,65,8))) TO Line2
  490.             STORE $(Line1,1,65 + @(' ',$(Line1,65,8)) - 2) TO Line1
  491.             CASE @(' ',$(Line1,60,5)) <> 0
  492.             STORE $(Line1,60 + @(' ',$(Line1,60,5))) TO Line2
  493.             STORE $(Line1,1,60 + @(' ',$(Line1,60,5)) - 2) TO Line1
  494.             CASE @(' ',$(Line1,55,5)) <> 0
  495.             STORE $(Line1,55 + @(' ',$(Line1,55,5))) TO Line2
  496.             STORE $(Line1,1,55 + @(' ',$(Line1,55,5)) - 2) TO Line1
  497.             CASE @(' ',$(Line1,50,5)) <> 0
  498.             STORE $(Line1,50 + @(' ',$(Line1,50,5))) TO Line2
  499.             STORE $(Line1,1,50 + @(' ',$(Line1,50,5)) - 2) TO Line1
  500.             OTHERWISE
  501.             STORE $(TRIM(Vineyard) + ' ' + Type + ' ' +;
  502.                 TRIM(Name),1,72) TO Line1
  503.             STORE $(TRIM(Special) + ' (' + TRIM(Appell) +;
  504.                 ')',1,72) TO Line2
  505.         ENDCASE
  506.  
  507.         CASE Choice = 'D'
  508.  
  509.         SELECT SECONDARY
  510.         IF .NOT. Status
  511.             USE Vintage INDEX Vntg/Key
  512.             STORE T TO Status
  513.         ENDIF
  514.  
  515.         FIND '&Target'
  516.  
  517.         STORE Y TO Continue
  518.  
  519.         DO WHILE .NOT. EOF .AND. Continue .AND. Number + Year = Target
  520.  
  521.             ERASE
  522.             STORE F TO Modify
  523.             STORE F TO Options
  524.  
  525.             IF Clarity + Acescence + Flavor <> 0
  526.                 SET FORMAT TO CmtScrn4
  527.             ELSE
  528.                 SET FORMAT TO CmtScrn5
  529.             ENDIF
  530.  
  531.             READ
  532.             SET FORMAT TO SCREEN
  533.  
  534.             IF Modify
  535.  
  536.                 STORE F TO VeryPoor
  537.                 STORE F TO Poor
  538.                 STORE F TO Enhances
  539.                 SET FORMAT TO CmtScrn1
  540.                 READ
  541.                 SET FORMAT TO SCREEN
  542.             ENDIF
  543.  
  544.             IF Options
  545.                 DO CmtOptn
  546.             ENDIF
  547.  
  548.             SKIP
  549.         ENDDO
  550.  
  551.         CASE Choice = 'E'
  552.  
  553.         ERASE
  554.         STORE '  ' TO Annum
  555.         @  4, 5 SAY Line1
  556.         @  5, 5 SAY Line2
  557.         @  8,27 SAY "ENTER VINTAGE YEAR CONCERNED"
  558.         @ 10,39 GET Annum PICTURE '!!'
  559.         @ 14,19 SAY "'NV' FOR NON-VINTAGE"
  560.         @ 16,19 SAY "IF NO ENTRY, SYSTEM WILL DISPLAY SELECTIONS"
  561.         @ 17,19 SAY "IN STORAGE AND ALL TASTING NOTES"
  562.         READ
  563.  
  564.         IF Annum = '  '
  565.  
  566.             DO SelecLst
  567.         ENDIF
  568.  
  569.         STORE Number + Annum TO Target
  570.  
  571.         OTHERWISE
  572.         RETURN
  573.     ENDCASE
  574.  
  575.     SELECT PRIMARY
  576.  
  577. ENDDO
  578.  
  579. RETURN
  580.  
  581. * SELECLST.CMD:  Subroutine to display years of current stock and notes
  582. * COPYRIGHT (C) 1982,1983 By Stephen L. Haynes Associates, Inc.
  583. * REV:  3/18/83
  584.  
  585. ERASE
  586. @  1, 5 SAY Line1
  587. @  2, 5 SAY Line2
  588. @  3, 1 SAY "*******************************************************************************"
  589. @  4, 6 SAY "FOLLOWING IS A LISTING OF YEARS OF WINES IN STOCK IN THE WINE CELLAR,"
  590. @  5, 7 SAY "TOGETHER WITH A LISTING OF YEARS OF WINES REVIEWED IN TASTING NOTES"
  591. @  6, 1 SAY "*******************************************************************************"
  592. @  7, 4 SAY "WINES IN STOCK:                     |    WINES REVIEWED:"
  593. @  8,40 SAY "|"
  594. @  9,40 SAY "|"
  595. @ 10,40 SAY "|"
  596. @ 11,40 SAY "|"
  597. @ 12,13 SAY "PROCESSING                 |              PROCESSING"
  598. @ 13, 9 SAY "PLEASE BE PATIENT              |          PLEASE BE PATIENT"
  599. @ 14,40 SAY "|"
  600. @ 15,40 SAY "|"
  601. @ 16,40 SAY "|"
  602. @ 17,40 SAY "|"
  603. @ 18,40 SAY "|"
  604. @ 19,40 SAY "|"
  605. @ 20,40 SAY "|"
  606. @ 21, 1 SAY "*******************************************************************************"
  607. READ
  608.  
  609. STORE Number TO Target
  610.  
  611. SELECT SECONDARY
  612. IF Status
  613.     USE CellStor INDEX CellStor
  614.     STORE F TO Status
  615. ENDIF
  616.  
  617. FIND '&Target'
  618.  
  619. @ 12,13 SAY "          "
  620. @ 13, 9 SAY "                 "
  621.  
  622. DO WHILE .NOT. EOF .AND. # <> 0 .AND. Number = Target
  623.     STORE 1 TO Column
  624.     DO WHILE .NOT. EOF .AND. Number = Target .AND. Column < 28
  625.         STORE 8 TO Line
  626.         DO WHILE .NOT. EOF .AND. Number = Target .AND. Line < 21
  627.             STORE Year TO Annum
  628.             IF Year <> 'NV'
  629.                 @ Line,Column SAY "19"+Year
  630.             ELSE
  631.                 @ Line,Column SAY "  "+Year
  632.             ENDIF
  633.             DO WHILE .NOT. EOF .AND. Number = Target .AND.;
  634.                     Year = Annum
  635.                 SKIP
  636.             ENDDO
  637.             STORE Line + 1 TO Line
  638.         ENDDO
  639.         STORE Column + 8 TO Column
  640.     ENDDO
  641. ENDDO
  642.  
  643. USE Vintage INDEX Vntg/Key
  644. STORE T TO Status
  645.  
  646. FIND '&Target'
  647.  
  648. @ 12,55 SAY "          "
  649. @ 13,51 SAY "                 "
  650.  
  651. DO WHILE .NOT. EOF .AND. # <> 0 .AND. Number = Target
  652.     STORE 42 TO Column
  653.     DO WHILE .NOT. EOF .AND. Number = Target .AND. Column < 67
  654.         STORE 8 TO Line
  655.         DO WHILE .NOT. EOF .AND. Number = Target .AND. Line < 21
  656.             STORE Year TO Annum
  657.             IF Year <> 'NV'
  658.                 @ Line,Column SAY "19"+Year
  659.             ELSE
  660.                 @ Line,Column SAY "  "+Year
  661.             ENDIF
  662.             DO WHILE .NOT. EOF .AND. Number = Target .AND.;
  663.                     Year = Annum
  664.                 SKIP
  665.             ENDDO
  666.             STORE Line + 1 TO Line
  667.         ENDDO
  668.         STORE Column + 8 TO Column
  669.     ENDDO
  670. ENDDO
  671.  
  672. SELECT PRIMARY
  673.  
  674. STORE '  ' TO Annum
  675. @ 22, 5 SAY "ENTER VINTAGE YEAR SELECTED >> " GET Annum PICTURE '!!'
  676. READ
  677. ERASE
  678.  
  679. RETURN
  680.  
  681. *ADDCMT.CMD:  Subroutine to add critical evaluation of individual bottles
  682. *             of wine from cellar or separately tasted
  683. *COPYRIGHT (C) 1982 By Stephen L. Haynes Associates, Inc.
  684. *REV:  11/19/84
  685.  
  686. APPEND BLANK
  687. REPLACE Number WITH P.Number
  688. REPLACE Year WITH Annum
  689.  
  690. ERASE
  691. STORE ' ' TO Choice
  692.  
  693. DO WHILE Choice <> 'A' .AND. Choice <> 'B' .AND. Choice <> 'C'
  694.  
  695.     @  4, 5 SAY "********************************************************************"
  696.     @  6,13 SAY "CHOOSE ONE OF THE THREE FOLLOWING EVALUATION APPROACHES:"
  697.     @  8,18 SAY "A.  COMMENTARY - NO NUMERIC RATING"
  698.     @  9,18 SAY "B.  COMMENTARY AND SHORT-FORM NUMERIC RATING"
  699.     @ 10,18 SAY "C.  COMMENTARY AND COMPLETE NUMERIC EVALUATION"
  700.     @ 12,18 GET Choice PICTURE '!'
  701.     @ 14, 5 SAY "********************************************************************"
  702.     READ NOUPDATE
  703. ENDDO
  704.  
  705. STORE N TO FromRack
  706.  
  707. @ 17,15 SAY "BOTTLE SELECTED FROM RACK? (Y/N) " GET FromRack PICTURE '!'
  708. READ
  709.  
  710. IF FromRack
  711.  
  712.     STORE Number + Year + Rack TO Rack
  713. ENDIF
  714.  
  715. ERASE
  716. DO CASE
  717.  
  718.     CASE Choice = 'A'
  719.  
  720.         SET FORMAT TO CmtScrn3
  721.         READ NOUPDATE
  722.         SET FORMAT TO SCREEN
  723.  
  724.         ERASE
  725.         @  8,22 SAY "DO YOU HAVE AN OVERALL NUMERIC SCORE?"
  726.         @ 10,38 GET Score
  727.         READ
  728.         ERASE
  729.  
  730.     CASE Choice = 'B'
  731.  
  732.         STORE 0 TO Appear
  733.         STORE 0 TO Nose
  734.         STORE 0 TO Taste
  735.         SET FORMAT TO CmtScrn2
  736.         READ NOUPDATE
  737.         SET FORMAT TO SCREEN
  738.         REPLACE Score WITH Appear + Nose + Taste + General
  739.  
  740.     CASE Choice = 'C'
  741.  
  742.         STORE F TO VeryPoor
  743.         STORE F TO Poor
  744.         STORE F TO Enhances
  745.         SET FORMAT TO CmtScrn1
  746.         READ NOUPDATE
  747.         SET FORMAT TO SCREEN
  748.         REPLACE Score WITH Clarity + Color + Bouquet + Acescence +;
  749.             Acid + Sweet + Body + Flavor + Tannin +;
  750.             Finish + General
  751.  
  752. ENDCASE
  753.  
  754. IF Choice = 'C'
  755.  
  756.     DO CASE
  757.  
  758.         CASE VeryPoor
  759.  
  760.             REPLACE Score WITH Score - 2
  761.  
  762.         CASE Poor
  763.  
  764.             REPLACE Score WITH Score - 1
  765.  
  766.     ENDCASE
  767. ENDIF
  768.  
  769. RETURN
  770.  
  771. * CMTSCRN1.FMT:  Full commentary and numeric evaluation.
  772. * COPYRIGHT (C) 1985 By Stephen L. Haynes Associates, Inc.
  773. *
  774. @  1, 1 SAY "| SENSORY EVALUATION CARD |"
  775. @  1,29 SAY Year
  776. @  1,32 SAY $(Line1,1,46)
  777. @  1,79 SAY "|"
  778. @  2, 1 SAY "|  Date Tasted"
  779. @  2,16 GET Date PICTURE 'XX/XX/XX'
  780. @  2,27 SAY "|"
  781. @  2,31 SAY $(Line2,1,47)
  782. @  2,79 SAY "|"
  783. @  3, 1 SAY "+-------------------------+---------------------------------------------------+"
  784. @  4,52 SAY "Format"
  785. @  4,59 GET Format
  786. @  4, 1 SAY "| Appearance:  Clarity (0-1)"
  787. @  4,29 GET Clarity
  788. @  4,35 SAY "Color (0-1)"
  789. @  4,46 GET Color
  790. @  4,79 SAY "|"
  791. @  5, 1 SAY "|"
  792. @  5,15 GET Looks1
  793. @  5,79 SAY "|"
  794. @  6, 1 SAY "|"
  795. @  6,15 GET Looks2
  796. @  6,79 SAY "|"
  797. @  7, 1 SAY "+-----------------------------------------------------------------------------+"
  798. @  8, 1 SAY "| Bouquet:  Character (0-3)"
  799. @  8,28 GET Bouquet
  800. @  8,34 SAY "Acescence (0-1)"
  801. @  8,49 GET Acescence
  802. @  8,79 SAY "|"
  803. @  9, 1 SAY "|Very Poor"
  804. @  9,12 GET VeryPoor PICTURE '!'
  805. @  9,79 SAY "|"
  806. @ 10, 1 SAY "|     Poor"
  807. @ 10,12 GET Poor PICTURE '!'
  808. @ 10,79 SAY "|"
  809. @ 11, 1 SAY "| Enhances"
  810. @ 11,12 GET Enhances PICTURE '!'
  811. @  9,15 GET Nose1
  812. @ 10,15 GET Nose2
  813. @ 11,15 GET Nose3
  814. @ 11,79 SAY "|"
  815. @ 12, 1 SAY "+-----------------------------------------------------------------------------+"
  816. @ 13, 1 SAY "| Taste/Body/Balance/Finish:  Acid balance (0-2)"
  817. @ 13,49 GET Acid
  818. @ 13,55 SAY "Dry/Sweet (0-1)"
  819. @ 13,70 GET Sweet
  820. @ 13,79 SAY "|"
  821. @ 14, 1 SAY "|               Body (0-2)"
  822. @ 14,27 GET Body
  823. @ 14,33 SAY "Flavor (0-3)"
  824. @ 14,45 GET Flavor
  825. @ 14,51 SAY "Astringency (0-2)"
  826. @ 14,68 GET Tannin
  827. @ 14,79 SAY "|"
  828. @ 15, 1 SAY "| Finish"
  829. @ 16, 1 SAY "|  (0-2)"
  830. @ 17, 3 GET Finish
  831. @ 15,15 GET Taste1
  832. @ 15,79 SAY "|"
  833. @ 16,15 GET Taste2
  834. @ 16,79 SAY "|"
  835. @ 17, 1 SAY "|"
  836. @ 17,15 GET Taste3
  837. @ 17,79 SAY "|"
  838. @ 18, 1 SAY "+-----------------------------------------------------------------------------+"
  839. @ 19, 1 SAY "| Overall:"
  840. @ 20, 1 SAY "|  (0-2)"
  841. @ 20, 9 GET General
  842. @ 19,15 GET Overall1
  843. @ 19,79 SAY "|"
  844. @ 20,15 GET Overall2
  845. @ 20,79 SAY "|"
  846. @ 21, 1 SAY "+-----------------------------------------------------------------------------+"
  847. @ 22, 1 SAY "| Postscript:"
  848. @ 22,15 GET Postscript
  849. @ 22,79 SAY "|"
  850.  
  851. * CMTSCRN2.FMT:  Full commentary and abbreviated numeric evaluation.
  852. * COPYRIGHT (C) 1985 By Stephen L. Haynes Associates, Inc.
  853. *
  854. @  1, 1 SAY "| SENSORY EVALUATION CARD |"
  855. @  1,29 SAY Year
  856. @  1,32 SAY $(Line1,1,46)
  857. @  1,79 SAY "|"
  858. @  2, 1 SAY "|  Date Tasted"
  859. @  2,16 GET Date PICTURE 'XX/XX/XX'
  860. @  2,27 SAY "|"
  861. @  2,31 SAY $(Line2,1,47)
  862. @  2,79 SAY "|"
  863. @  3, 1 SAY "+-------------------------+---------------------------------------------------+"
  864. @  4,52 SAY "Format"
  865. @  4,59 GET Format
  866. @  4, 1 SAY "| Appearance:                 (0-2)"
  867. @  4,38 GET Appear PICTURE '9.9'
  868. @  4,79 SAY "|"
  869. @  5, 1 SAY "|"
  870. @  5,15 GET Looks1
  871. @  5,79 SAY "|"
  872. @  6, 1 SAY "|"
  873. @  6,15 GET Looks2
  874. @  6,79 SAY "|"
  875. @  7, 1 SAY "+-----------------------------------------------------------------------------+"
  876. @  8, 1 SAY "| Bouquet:                    (0-4)"
  877. @  8,38 GET Nose PICTURE '9.9'
  878. @  8,79 SAY "|"
  879. @  9, 1 SAY "|"
  880. @  9,15 GET Nose1
  881. @  9,79 SAY "|"
  882. @ 10, 1 SAY "|"
  883. @ 10,15 GET Nose2
  884. @ 10,79 SAY "|"
  885. @ 11, 1 SAY "|"
  886. @ 11,15 GET Nose3
  887. @ 11,79 SAY "|"
  888. @ 12, 1 SAY "+-----------------------------------------------------------------------------+"
  889. @ 13, 1 SAY "| Taste/Body/Balance/Finish:  (0-12)"
  890. @ 13,38 GET Taste PICTURE '99.9'
  891. @ 13,79 SAY "|"
  892. @ 14, 1 SAY "|"
  893. @ 14,15 GET Taste1
  894. @ 14,79 SAY "|"
  895. @ 15, 1 SAY "|"
  896. @ 15,15 GET Taste2
  897. @ 15,79 SAY "|"
  898. @ 16, 1 SAY "|"
  899. @ 16,15 GET Taste3
  900. @ 16,79 SAY "|"
  901. @ 17, 1 SAY "+-----------------------------------------------------------------------------+"
  902. @ 18, 1 SAY "| Overall:"
  903. @ 19, 1 SAY "|  (0-2)"
  904. @ 19, 9 GET General PICTURE '9.9'
  905. @ 18,15 GET Overall1
  906. @ 18,79 SAY "|"
  907. @ 19,15 GET Overall2
  908. @ 19,79 SAY "|"
  909. @ 20, 1 SAY "+-----------------------------------------------------------------------------+"
  910. @ 21, 1 SAY "| Postscript:"
  911. @ 21,15 GET Postscript
  912. @ 21,79 SAY "|"
  913. @ 22, 1 SAY "+-----------------------------------------------------------------------------+"
  914.  
  915. * CMTSCRN3.FMT:  Full commentary, only total numeric evaluation.
  916. * COPYRIGHT (C) 1985 By Stephen L. Haynes Associates, Inc.
  917. *
  918. @  1, 1 SAY "| SENSORY EVALUATION CARD |"
  919. @  1,29 SAY Year
  920. @  1,32 SAY $(Line1,1,46)
  921. @  1,79 SAY "|"
  922. @  2, 1 SAY "|  Date Tasted"
  923. @  2,16 GET Date PICTURE 'XX/XX/XX'
  924. @  2,27 SAY "|"
  925. @  2,31 SAY $(Line2,1,47)
  926. @  2,79 SAY "|"
  927. @  3, 1 SAY "+-------------------------+---------------------------------------------------+"
  928. @  4, 1 SAY "| Appearance:                                      Format"
  929. @  4,59 GET Format
  930. @  4,79 SAY "|"
  931. @  5, 1 SAY "|"
  932. @  5,15 GET Looks1
  933. @  5,79 SAY "|"
  934. @  6, 1 SAY "|"
  935. @  6,15 GET Looks2
  936. @  6,79 SAY "|"
  937. @  7, 1 SAY "+-----------------------------------------------------------------------------+"
  938. @  8, 1 SAY "| Bouquet:                                                                    |"
  939. @  9, 1 SAY "|"
  940. @  9,15 GET Nose1
  941. @  9,79 SAY "|"
  942. @ 10, 1 SAY "|"
  943. @ 10,15 GET Nose2
  944. @ 10,79 SAY "|"
  945. @ 11, 1 SAY "|"
  946. @ 11,15 GET Nose3
  947. @ 11,79 SAY "|"
  948. @ 12, 1 SAY "+-----------------------------------------------------------------------------+"
  949. @ 13, 1 SAY "| Taste/Body/Balance/Finish:                                                  |"
  950. @ 14, 1 SAY "|"
  951. @ 14,15 GET Taste1
  952. @ 14,79 SAY "|"
  953. @ 15, 1 SAY "|"
  954. @ 15,15 GET Taste2
  955. @ 15,79 SAY "|"
  956. @ 16, 1 SAY "|"
  957. @ 16,15 GET Taste3
  958. @ 16,79 SAY "|"
  959. @ 17, 1 SAY "+-----------------------------------------------------------------------------+"
  960. @ 18, 1 SAY "| Overall:"
  961. @ 18,15 GET Overall1
  962. @ 18,79 SAY "|"
  963. @ 19, 1 SAY "|"
  964. @ 9,15 GET Overall2
  965. @ 19,79 SAY "|"
  966. @ 20, 1 SAY "+-----------------------------------------------------------------------------+"
  967. @ 21, 1 SAY "| Postscript:"
  968. @ 21,15 GET Postscript
  969. @ 21,79 SAY "|"
  970. @ 22, 1 SAY "+-----------------------------------------------------------------------------+"
  971.  
  972. * CMTSCRN4.FMT: Display of full commentary and numeric analysis.
  973. * COPYRIGHT (C) 1985 By Stephen L. Haynes Associates, Inc.
  974. *
  975. @  1, 1 SAY "| SENSORY EVALUATION CARD |"
  976. @  1,29 SAY Year
  977. @  1,32 SAY $(Line1,1,46)
  978. @  1,79 SAY "|"
  979. @  2, 1 SAY "|  Date Tasted"
  980. @  2,16 SAY Date
  981. @  2,27 SAY "|"
  982. @  2,31 SAY $(Line2,1,47)
  983. @  2,79 SAY "|"
  984. @  3, 1 SAY "+-------------------------+---------------------------------------------------+"
  985. @  4, 1 SAY "| Appearance:  Clarity (0-1)"
  986. @  4,30 SAY Clarity
  987. @  4,34 SAY " Color (0-1)"
  988. @  4,47 SAY Color
  989. @  4,51 SAY " Format"
  990. @  4,60 SAY Format
  991. @  4,79 SAY "|"
  992. @  5, 1 SAY "|            |"
  993. @  5,15 SAY Looks1
  994. @  5,79 SAY "|"
  995. @  6, 1 SAY "|            |"
  996. @  6,15 SAY Looks2
  997. @  6,79 SAY "|"
  998. @  7, 1 SAY "+-----------------------------------------------------------------------------+"
  999. @  8, 1 SAY "| Bouquet:  Character (0-3)"
  1000. @  8,29 SAY Bouquet
  1001. @  8,34 SAY "Acescence (0-1)"
  1002. @  8,50 SAY Acescence
  1003. @  8,79 SAY "|"
  1004. @  9, 1 SAY "|"
  1005. @  9,14 SAY "|"
  1006. @  9,15 SAY Nose1
  1007. @  9,79 SAY "|"
  1008. @ 10, 1 SAY "|"
  1009. @ 10,14 SAY "|"
  1010. @ 10,15 SAY Nose2
  1011. @ 10,79 SAY "|"
  1012. @ 11, 1 SAY "|"
  1013. @ 11,14 SAY "|"
  1014. @ 11,15 SAY Nose3
  1015. @ 11,79 SAY "|"
  1016. @ 12, 1 SAY "+-----------------------------------------------------------------------------+"
  1017. @ 13, 1 SAY "| Taste/Body/Balance/Finish:  Acid balance (0-2)"
  1018. @ 13,50 SAY Acid
  1019. @ 13,55 SAY "Dry/Sweet (0-1)"
  1020. @ 13,71 SAY Sweet
  1021. @ 13,79 SAY "|"
  1022. @ 14, 1 SAY "|               Body (0-2)"
  1023. @ 14,28 SAY Body
  1024. @ 14,32 SAY " Flavor (0-3)"
  1025. @ 14,46 SAY Flavor
  1026. @ 14,50 SAY " Astringency (0-2)"
  1027. @ 14,69 SAY Tannin
  1028. @ 14,79 SAY "|"
  1029. @ 15, 1 SAY "| Finish     |"
  1030. @ 15,15 SAY Taste1
  1031. @ 15,79 SAY "|"
  1032. @ 16, 1 SAY "|  (0-2)     |"
  1033. @ 16,15 SAY Taste2
  1034. @ 16,79 SAY "|"
  1035. @ 17, 1 SAY "|"
  1036. @ 17, 3 SAY Finish
  1037. @ 17,14 SAY "|"
  1038. @ 17,15 SAY Taste3
  1039. @ 17,79 SAY "|"
  1040. @ 18, 1 SAY "+-----------------------------------------------------------------------------+"
  1041. @ 19, 1 SAY "| Overall:   |"
  1042. @ 19,15 SAY Overall1
  1043. @ 20, 1 SAY "|  (0-2)"
  1044. @ 20, 9 SAY General
  1045. @ 20,14 SAY "|"
  1046. @ 20,15 SAY Overall2
  1047. @ 19,73 SAY "Score |"
  1048. @ 20,74 SAY Score
  1049. @ 20,79 SAY "|"
  1050. @ 21, 1 SAY "+-----------------------------------------------------------------------------+"
  1051. @ 22, 1 SAY "| Postscript:"
  1052. @ 22,15 SAY Postscript
  1053. @  9,69 SAY "Modify?"
  1054. @  9,77 GET Modify PICTURE '!'
  1055. @ 10,67 SAY "Continue?"
  1056. @ 10,77 GET Continue PICTURE '!'
  1057. @ 11,68 SAY "Options?"
  1058. @ 11,77 GET Options PICTURE '!'
  1059. @ 22,79 SAY "|"
  1060.  
  1061. * CMTSCRN5.FMT:  Display of full commentary and abbreviated numeric
  1062. *                analysis
  1063. * COPYRIGHT (C) 1985 By Stephen L. Haynes Associates, Inc.
  1064. *
  1065. @  1, 1 SAY "| SENSORY EVALUATION CARD |"
  1066. @  1,29 SAY Year
  1067. @  1,32 SAY $(Line1,1,46)
  1068. @  1,79 SAY "|"
  1069. @  2, 1 SAY "|  Date Tasted"
  1070. @  2,16 SAY Date
  1071. @  2,27 SAY "|"
  1072. @  2,31 SAY $(Line2,1,47)
  1073. @  2,79 SAY "|"
  1074. @  3, 1 SAY "+-------------------------+---------------------------------------------------+"
  1075. @  4, 1 SAY "| Appearance:"
  1076. @  4,51 SAY " Format"
  1077. @  4,60 SAY Format
  1078. @  4,79 SAY "|"
  1079. @  5, 1 SAY "|            |"
  1080. @  5,15 SAY Looks1
  1081. @  5,79 SAY "|"
  1082. @  6, 1 SAY "|            |"
  1083. @  6,15 SAY Looks2
  1084. @  6,79 SAY "|"
  1085. @  7, 1 SAY "+-----------------------------------------------------------------------------+"
  1086. @  8, 1 SAY "| Bouquet:"
  1087. @  8,79 SAY "|"
  1088. @  9, 1 SAY "|"
  1089. @  9,14 SAY "|"
  1090. @  9,15 SAY Nose1
  1091. @  9,79 SAY "|"
  1092. @ 10, 1 SAY "|"
  1093. @ 10,14 SAY "|"
  1094. @ 10,15 SAY Nose2
  1095. @ 10,79 SAY "|"
  1096. @ 11, 1 SAY "|"
  1097. @ 11,14 SAY "|"
  1098. @ 11,15 SAY Nose3
  1099. @ 11,79 SAY "|"
  1100. @ 12, 1 SAY "+-----------------------------------------------------------------------------+"
  1101. @ 13, 1 SAY "| Taste/Body/Balance/Finish:"
  1102. @ 13,79 SAY "|"
  1103. @ 14, 1 SAY "|"
  1104. @ 14,79 SAY "|"
  1105. @ 15, 1 SAY "|"
  1106. @ 15,15 SAY Taste1
  1107. @ 15,79 SAY "|"
  1108. @ 16, 1 SAY "|"
  1109. @ 16,15 SAY Taste2
  1110. @ 16,79 SAY "|"
  1111. @ 17, 1 SAY "|"
  1112. @ 17,14 SAY "|"
  1113. @ 17,15 SAY Taste3
  1114. @ 17,79 SAY "|"
  1115. @ 18, 1 SAY "+-----------------------------------------------------------------------------+"
  1116. @ 19, 1 SAY "| Overall:   |"
  1117. @ 19,15 SAY Overall1
  1118. @ 20, 1 SAY "|"
  1119. @ 20,14 SAY "|"
  1120. @ 20,15 SAY Overall2
  1121. @ 19,73 SAY "Score |"
  1122. @ 20,74 SAY Score
  1123. @ 20,79 SAY "|"
  1124. @ 21, 1 SAY "+-----------------------------------------------------------------------------+"
  1125. @ 22, 1 SAY "| Postscript:"
  1126. @ 22,15 SAY Postscript
  1127. @  9,69 SAY "Modify?"
  1128. @  9,77 GET Modify PICTURE '!'
  1129. @ 10,67 SAY "Continue?"
  1130. @ 10,77 GET Continue PICTURE '!'
  1131. @ 11,68 SAY "Options?"
  1132. @ 11,77 GET Options PICTURE '!'
  1133. @ 22,79 SAY "|"
  1134.  
  1135. * CHNGRCRD.CMD:  Subroutine that locates proper cellar storage card, then
  1136. *                prompts the opportunity to change it, or if it doesn't exist,
  1137. *                prompts the opportunity to add a new one.
  1138. * COPYRIGHT (C) 1982,1983 By Stephen L. Haynes Associates, Inc.
  1139. * REV:  7/29/83
  1140.  
  1141. STORE F TO Hit
  1142. STORE T TO AnotherRec
  1143.  
  1144. DO WHILE AnotherRec
  1145.  
  1146.     STORE # TO GoBack
  1147.     ERASE
  1148.     SET FORMAT TO CellCrd1
  1149.     READ NOUPDATE
  1150.     SET FORMAT TO SCREEN
  1151.  
  1152.     IF .NOT. Continue .OR. Hit
  1153.  
  1154.         STORE F TO AnotherRec
  1155.  
  1156.         IF .NOT. Hit
  1157.  
  1158.             SKIP
  1159.  
  1160.             IF .NOT. EOF .AND. Number + Year = Target
  1161.  
  1162.             STORE T TO NewRecord
  1163.             ERASE
  1164.             @  7,12 SAY "THIS WINE HAS ANOTHER STORAGE RECORD, PREVIOUSLY DELETED."
  1165.             @  9,12 SAY "DO YOU WISH TO RESTORE THIS STORAGE RECORD FOR REVISION?"
  1166.             @ 11,20 SAY "(IF YOU ANSWER 'N', THE RECORD WILL BE"
  1167.             @ 12,20 SAY " PERMANENTLY DELETED TO PREVENT CONFUSION)"
  1168.             @ 14,39 GET NewRecord PICTURE '!'
  1169.             READ NOUPDATE
  1170.  
  1171.             IF NewRecord
  1172.  
  1173.                 SKIP -1
  1174.                 REPLACE Continue WITH T
  1175.                 SKIP
  1176.                 STORE T TO AnotherRec
  1177.             ELSE
  1178.                 DELETE
  1179.             ENDIF
  1180.             ENDIF
  1181.         ENDIF
  1182.     ELSE
  1183.         SKIP
  1184.     ENDIF
  1185.  
  1186.     IF EOF .OR. Number + Year <> Target
  1187.         STORE F TO AnotherRec
  1188.     ENDIF
  1189.  
  1190. ENDDO
  1191.  
  1192. IF .NOT. Hit
  1193.  
  1194.     ERASE
  1195.     STORE T TO NewRecord
  1196.     @  6,15 SAY "DO YOU WISH TO CREATE ANOTHER CELLAR STORAGE RECORD?"
  1197.     @  8,40 GET NewRecord PICTURE '!'
  1198.     READ
  1199.  
  1200.     IF NewRecord
  1201.  
  1202.         GOTO GoBack
  1203.         REPLACE Continue WITH T
  1204.  
  1205.         DO WHILE Continue
  1206.  
  1207.             STORE T TO CopyData
  1208.             @ 10, 8 SAY "DO YOU WISH TO TRANSFER PURCHASE STATISTICS FROM PREVIOUS RECORD?"
  1209.             @ 12,40 GET CopyData PICTURE '!'
  1210.             READ
  1211.             ERASE
  1212.  
  1213.             IF CopyData
  1214.  
  1215.                 STORE Importer TO ImporterX
  1216.                 STORE Pur:Store TO Pur:StoreX
  1217.                 STORE Pur:Date TO Pur:DateX
  1218.                 STORE Price TO PriceX
  1219.                 STORE Begin TO BeginX
  1220.                 STORE End TO EndX
  1221.  
  1222.                 APPEND BLANK
  1223.  
  1224.                 REPLACE Number WITH P.Number
  1225.                 REPLACE Year WITH Annum
  1226.                 REPLACE Continue WITH F
  1227.                 REPLACE Importer WITH ImporterX
  1228.                 REPLACE Pur:Store WITH Pur:StoreX
  1229.                 REPLACE Pur:Date WITH Pur:DateX
  1230.                 REPLACE Price WITH PriceX
  1231.                 REPLACE Begin WITH BeginX
  1232.                 REPLACE End WITH EndX
  1233.             ELSE
  1234.  
  1235.                 APPEND BLANK
  1236.                 REPLACE Number WITH P.Number
  1237.                 REPLACE Year WITH Annum
  1238.                 REPLACE Continue WITH F
  1239.             ENDIF
  1240.  
  1241.             SET FORMAT TO CellCard
  1242.             READ
  1243.             SET FORMAT TO SCREEN
  1244.             ERASE
  1245.         ENDDO
  1246.     ENDIF
  1247. ELSE
  1248.  
  1249.     STORE T TO Amend
  1250.     ERASE
  1251.     @  8,13 SAY "DO YOU WISH TO AMEND THE CURRENT CELLAR STORAGE RECORD?"
  1252.     @ 10,40 GET Amend PICTURE '!'
  1253.     READ
  1254.  
  1255.     IF Amend
  1256.  
  1257.         SET FORMAT TO CellCard
  1258.         READ NOUPDATE
  1259.         SET FORMAT TO SCREEN
  1260.  
  1261.     ENDIF
  1262. ENDIF
  1263.  
  1264. RETURN
  1265.  
  1266. * CELLCARD.FMT:  Format for entry of purchase information.
  1267. * COPYRIGHT (C) 1985 By Stephen L. Haynes Associates, Inc.
  1268. *
  1269. @  1,29 SAY "CELLAR STORAGE RECORD"
  1270. @  2, 1 SAY "+-----------------------------------------------------------------------------+"
  1271. @  3, 1 SAY "|"
  1272. @  3, 3 SAY Annum
  1273. @  3, 6 SAY Line1
  1274. @  3,79 SAY "|"
  1275. @  4, 1 SAY "|"
  1276. @  4, 8 SAY Line2
  1277. @  4,79 SAY "|"
  1278. @  5, 1 SAY "+-----------------------------------------------------------------------------+"
  1279. @  6, 1 SAY "|         IMPORTER"
  1280. @  6,20 GET Importer
  1281. @  6,79 SAY "|"
  1282. @  7, 1 SAY "|     STORE                                                                   |"
  1283. @  8, 1 SAY "|     WHERE BOUGHT"
  1284. @  8,20 GET Pur:Store
  1285. @  8,79 SAY "|"
  1286. @  9, 1 SAY "|                                                                             |"
  1287. @ 10, 1 SAY "|   DATE PURCHASED"
  1288. @ 10,20 GET Pur:Date PICTURE 'XX/XX/XX'
  1289. @ 10,49 SAY "PRICE"
  1290. @ 10,55 GET Price
  1291. @ 10,79 SAY "|"
  1292. @ 11, 1 SAY "+-----------------------------------------------------------------------------+"
  1293. @ 12, 1 SAY "|                                                                             |"
  1294. @ 13, 1 SAY "|   NO. OF BOTTLES"
  1295. @ 13,20 GET Bottles PICTURE '99'
  1296. @ 13,26 SAY "RACKED"
  1297. @ 13,33 GET Racked PICTURE '9'
  1298. @ 13,38 SAY "BIN/CASE LOCATION"
  1299. @ 13,56 GET Bin PICTURE '!!!!!!!'
  1300. @ 13,79 SAY "|"
  1301. @ 14, 1 SAY "+-----------------------------------------------------------------------------+"
  1302. @ 15, 1 SAY "|                                                                             |"
  1303. @ 16, 1 SAY "|    YEAR TO BEGIN"
  1304. @ 16,20 GET Begin
  1305. @ 16,33 SAY "SHOULD BE CONSUMED BY"
  1306. @ 16,55 GET End
  1307. @ 16,79 SAY "|"
  1308. @ 17, 1 SAY "|                                                                             |"
  1309. @ 18, 1 SAY "+-----------------------------------------------------------------------------+"
  1310. @ 19, 1 SAY "|                                                                             |"
  1311. @ 20, 1 SAY "|                                    Continued on another card?"
  1312. @ 20,66 GET Continue PICTURE '!'
  1313. @ 20,79 SAY "|"
  1314. @ 21, 1 SAY "|                                                                             |"
  1315. @ 22, 1 SAY "+-----------------------------------------------------------------------------+"
  1316.  
  1317. * CELLCRD1.FMT:  Format for display of purchase information.
  1318. * COPYRIGHT (C) 1985 By Stephen L. Haynes Associates, Inc.
  1319. *
  1320. @  1, 1 SAY "CORRECT RECORD?"
  1321. @  1,17 GET Hit PICTURE '!'
  1322. @  1,29 SAY "CELLAR STORAGE RECORD"
  1323. @  2, 1 SAY "+-----------------------------------------------------------------------------+"
  1324. @  3, 1 SAY "|"
  1325. @  3, 3 SAY Annum
  1326. @  3, 6 SAY Line1
  1327. @  3,79 SAY "|"
  1328. @  4, 1 SAY "|"
  1329. @  4, 8 SAY Line2
  1330. @  4,79 SAY "|"
  1331. @  5, 1 SAY "+-----------------------------------------------------------------------------+"
  1332. @  6, 1 SAY "|         IMPORTER"
  1333. @  6,20 SAY Importer
  1334. @  6,79 SAY "|"
  1335. @  7, 1 SAY "|     STORE                                                                   |"
  1336. @  8, 1 SAY "|     WHERE BOUGHT"
  1337. @  8,20 SAY Pur:Store
  1338. @  8,79 SAY "|"
  1339. @  9, 1 SAY "|                                                                             |"
  1340. @ 10, 1 SAY "|   DATE PURCHASED"
  1341. @ 10,20 SAY Pur:Date PICTURE 'XX/XX/XX'
  1342. @ 10,49 SAY "PRICE"
  1343. @ 10,55 SAY Price
  1344. @ 10,79 SAY "|"
  1345. @ 11, 1 SAY "+-----------------------------------------------------------------------------+"
  1346. @ 12, 1 SAY "|                                                                             |"
  1347. @ 13, 1 SAY "|   NO. OF BOTTLES"
  1348. @ 13,20 SAY Bottles PICTURE '99'
  1349. @ 13,26 SAY "RACKED"
  1350. @ 13,33 SAY Racked PICTURE '9'
  1351. @ 13,38 SAY "BIN/CASE LOCATION"
  1352. @ 13,56 SAY Bin PICTURE '!!!!!!!'
  1353. @ 13,79 SAY "|"
  1354. @ 14, 1 SAY "+-----------------------------------------------------------------------------+"
  1355. @ 15, 1 SAY "|                                                                             |"
  1356. @ 16, 1 SAY "|    YEAR TO BEGIN"
  1357. @ 16,20 SAY Begin
  1358. @ 16,33 SAY "SHOULD BE CONSUMED BY"
  1359. @ 16,55 SAY End
  1360. @ 16,79 SAY "|"
  1361. @ 17, 1 SAY "|                                                                             |"
  1362. @ 18, 1 SAY "+-----------------------------------------------------------------------------+"
  1363. @ 19, 1 SAY "|                                                                             |"
  1364. @ 20, 1 SAY "|                                    Continued on another card?"
  1365. @ 20,66 SAY Continue PICTURE '!'
  1366. @ 20,79 SAY "|"
  1367. @ 21, 1 SAY "|                                                                             |"
  1368. @ 22, 1 SAY "+-----------------------------------------------------------------------------+"
  1369.  
  1370. * CMTOPTN.CMD:  Subroutine to write retrieved material to disk or printer,
  1371. *        or delete contents.
  1372. * COPYRIGHT (C) 1983 By Stephen L. Haynes Associates, Inc.
  1373. * REV:  3/23/83
  1374.  
  1375. STORE ' ' TO Choice
  1376.  
  1377. ERASE
  1378. SET FORMAT TO CardOptn
  1379. READ
  1380. SET FORMAT TO SCREEN
  1381. ERASE
  1382.  
  1383. DO CASE
  1384.  
  1385.     CASE Choice = 'A'
  1386.  
  1387.         @  8,26 SAY "READY PRINTER AND PRESS RETURN"
  1388.         @ 18,1
  1389.         WAIT
  1390.  
  1391.         SET FORMAT TO PRINT
  1392.         SET MARGIN TO 5
  1393.  
  1394.         @  1, 1 SAY Year
  1395.         @  1, 4 SAY Line1
  1396.         @  2, 4 SAY Line2
  1397.         @  4, 1 SAY "Date Tasted"
  1398.         @  4,13 SAY Date
  1399.         @  4,22 SAY "Format"
  1400.         @  4,29 SAY Format
  1401.         @  6, 1 SAY "Appearance:  Clarity (0-1)"
  1402.         @  6,27 SAY Clarity
  1403.         @  6,33 SAY "Color (0-1)"
  1404.         @  6,44 SAY Color
  1405.         @  7,13 SAY Looks1
  1406.         @  8,13 SAY Looks2
  1407.         @ 10, 0 SAY "Bouquet:  Character (0-3)"
  1408.         @ 10,25 SAY Bouquet
  1409.         @ 10,31 SAY "Acescence (0-1)"
  1410.         @ 10,46 SAY Acescence
  1411.         @ 11,13 SAY Nose1
  1412.         @ 12,13 SAY Nose2
  1413.         @ 13,13 SAY Nose3
  1414.         @ 15, 1 SAY "Taste/Body/Balance/Finish:  Acid balance (0-2)"
  1415.         @ 15,47 SAY Acid
  1416.         @ 15,53 SAY "Dry/Sweet (0-1)"
  1417.         @ 15,68 SAY Sweet
  1418.         @ 16, 2 SAY "Body (0-2)"
  1419.         @ 16,12 SAY Body
  1420.         @ 16,18 SAY "Flavor (0-3)"
  1421.         @ 16,30 SAY Flavor
  1422.         @ 16,36 SAY "Astringency (0-2)"
  1423.         @ 16,53 SAY Tannin
  1424.         @ 16,59 SAY "Finish (0-2)"
  1425.         @ 16,71 SAY Finish
  1426.         @ 17,13 SAY Taste1
  1427.         @ 18,13 SAY Taste2
  1428.         @ 19,13 SAY Taste3
  1429.         @ 21, 1 SAY "Overall:"
  1430.         @ 21,13 SAY Overall1
  1431.         @ 21,71 SAY "Score"
  1432.         @ 22, 2 SAY "(0-2)"
  1433.         @ 22, 7 SAY General
  1434.         @ 22,13 SAY Overall2
  1435.         @ 22,72 SAY Score
  1436.         @ 24, 1 SAY "Postscript:"
  1437.         @ 24,13 SAY Postscript
  1438.  
  1439.         SET FORMAT TO SCREEN
  1440.  
  1441.     CASE Choice = 'B'
  1442.  
  1443.         STORE '              ' TO DiskStore
  1444.         @  5,13 SAY "ENTER THE FILE NAME TO WHICH TO WISH THE DOCUMENT STORED"
  1445.         @  7,33 GET DiskStore PICTURE '!!!!!!!!!!!!!!'
  1446.         @ 10,15 SAY " NOTE:  DEFAULT IS 'JUNK.TXT'"
  1447.         @ 12,15 SAY "        IF NO EXTENSION (E.G., '.DOC') IS PROVIDED,"
  1448.         @ 13,15 SAY "          SYSTEM WILL PROVIDE '.TXT' EXTENSION"
  1449.         @ 15,15 SAY "        NAME MUST BE NORMAL CP/M FORMAT -- NO LONGER"
  1450.         @ 16,15 SAY "          THAN EIGHT CHARACTERS PLUS '.' AND THREE"
  1451.         @ 17,15 SAY "          CHARACTER EXTENSION"
  1452.         @ 19,15 SAY "        FILE NAME MAY BE PRECEDED BY A DRIVE"
  1453.         @ 20,15 SAY "          DESIGNATION IN FORM '_:'"
  1454.         READ
  1455.  
  1456.         RESET
  1457.  
  1458.         IF DiskStore = ' '
  1459.             STORE 'Junk.TXT' TO DiskStore
  1460.         ENDIF
  1461.  
  1462.         SET ALTERNATE TO &DiskStore
  1463.         SET ALTERNATE ON
  1464.         SET RAW ON
  1465.         SET CONSOLE OFF
  1466.  
  1467.         ? Year + ' ' + Line1
  1468.         ? '   ' + Line2
  1469.         ?
  1470.         ? "Date Tasted " + Date + "   Format " + Format
  1471.         ?
  1472.         ? "Appearance:  Clarity (0-1) " + STR(Clarity,3,1) +;
  1473.             "  Color (0-1) " + STR(Color,3,1)
  1474.         ? "            " + Looks1
  1475.         ? "            " + Looks2
  1476.         ?
  1477.         @ 10, 0 SAY "Bouquet:  Character (0-3)"
  1478.         @ 10,25 SAY Bouquet
  1479.         @ 10,31 SAY "Acescence (0-1)"
  1480.         @ 10,46 SAY Acescence
  1481.         @ 11,13 SAY Nose1
  1482.         @ 12,13 SAY Nose2
  1483.         @ 13,13 SAY Nose3
  1484.         @ 15, 1 SAY "Taste/Body/Balance/Finish:  Acid balance (0-2)"
  1485.         @ 15,47SAY Acid
  1486.         @ 15,53 SAY "Dry/Sweet (0-1)"
  1487.         @ 15,68 SAY Sweet
  1488.         @ 16, 2 SAY "Body (0-2)"
  1489.         @ 16,12 SAY Body
  1490.         @ 16,18 SAY "Flavor (0-3)"
  1491.         @ 16,30 SAY Flavor
  1492.         @ 16,36 SAY "Astringency (0-2)"
  1493.         @ 16,53 SAY Tannin
  1494.         @ 16,59 SAY "Finish (0-2)"
  1495.         @ 16,71 SAY Finish
  1496.         @ 17,13 SAY Taste1
  1497.         @ 18,13 SAY Taste2
  1498.         @ 19,13 SAY Taste3
  1499.         @ 21, 1 SAY "Overall:"
  1500.         @ 21,13 SAY Overall1
  1501.         @ 21,71 SAY "Score"
  1502.         @ 22, 2 SAY "(0-2)"
  1503.         @ 22, 7 SAY General
  1504.         @ 22,13 SAY Overall2
  1505.         @ 22,72 SAY Score
  1506.         @ 24, 1 SAY "Postscript:"
  1507.         @ 24,13 SAY Postscript
  1508.  
  1509.         SET ALTERNATE OFF
  1510.         SET RAW OFF
  1511.         SET CONSOLE ON
  1512.  
  1513.     CASE Choice = 'C'
  1514.  
  1515.         FIND &Target
  1516.  
  1517.         ERASE
  1518.         STORE F TO Confirm
  1519.         @  6,17 SAY "YOU HAVE CHOSEN TO DELETE DOCUMENT NUMBER" + Number
  1520.         @  8,19 SAY "DO YOU REALLY WISH TO DELETE THIS DOCUMENT?"
  1521.         @ 10,40 GET Confirm PICTURE '!'
  1522.         READ
  1523.  
  1524.         IF .NOT. Confirm
  1525.             RETURN
  1526.         ENDIF
  1527.  
  1528.         REPLACE Line WITH '**DELETED**'
  1529.         SKIP
  1530.  
  1531.         DO WHILE .NOT. EOF .AND. Target = TRIM(Number)
  1532.  
  1533.             REPLACE Line WITH ' '
  1534.             DELETE
  1535.             SKIP
  1536.         ENDDO
  1537.  
  1538.     CASE Choice = 'D'
  1539.  
  1540.         STORE F TO NewPage
  1541.             @  6,10 SAY "DO YOU WISH EACH SEGMENT/DOCUMENT TO BEGIN ON A SEPARATE PAGE?"
  1542.         @  8,40 GET NewPage PICTURE '!'
  1543.         READ
  1544.  
  1545.         ? CHR(7)
  1546.         IF .NOT. NewPage
  1547.             @  6, 1
  1548.             @  6,15 SAY "BE SURE PRINTER IS LOADED WITH CONTINUOUS FORM PAPER"
  1549.         ENDIF
  1550.         @  8,26 SAY "READY PRINTER AND PRESS RETURN"
  1551.         @ 18,1
  1552.         WAIT
  1553.  
  1554.         SET FORMAT TO PRINT
  1555.         SET MARGIN TO 5
  1556.         STORE 1 TO LineX
  1557.  
  1558.         SELECT SECONDARY
  1559.         STORE # TO GoBack
  1560.  
  1561.         DO WHILE .NOT. EOF
  1562.  
  1563.             STORE TRIM(Loc1) TO Target
  1564.  
  1565.             SELECT PRIMARY
  1566.             FIND &Target
  1567.  
  1568.             @  LineX,5 SAY "TEXT OF SELECTED DOCUMENT " + Number
  1569.  
  1570.             STORE LineX + 2 TO LineX
  1571.  
  1572.             DO WHILE .NOT. EOF .AND. Target = TRIM(Number)
  1573.  
  1574.                 @ LineX,5 SAY Line
  1575.                 STORE LineX + 1 TO LineX
  1576.                 SKIP
  1577.             ENDDO
  1578.  
  1579.             IF NewPage
  1580.                 EJECT
  1581.                 STORE 1 TO LineX
  1582.                 SET FORMAT TO SCREEN
  1583.                 ERASE
  1584.                 @  8,33 SAY "INSERT NEW PAGE"
  1585.                 @ 18,1
  1586.                 WAIT
  1587.                 SET FORMAT TO PRINT
  1588.             ELSE
  1589.                 STORE LineX + 3 TO LineX
  1590.             ENDIF
  1591.  
  1592.             SELECT SECONDARY
  1593.             SKIP
  1594.         ENDDO
  1595.  
  1596.         SET FORMAT TO SCREEN
  1597.         SELECT SECONDARY
  1598.         GOTO GoBack
  1599.  
  1600.     CASE Choice = 'E'
  1601.  
  1602.         STORE '              ' TO DiskStore
  1603.         @  5,13 SAY "ENTER THE FILE NAME TO WHICH TO WISH THE DOCUMENT STORED"
  1604.         @  7,33 GET DiskStore PICTURE '!!!!!!!!!!!!!!'
  1605.         @ 10,15 SAY " NOTE:  DEFAULT IS 'JUNK.TXT'"
  1606.         @ 12,15 SAY "        IF NO EXTENSION (E.G., '.DOC') IS PROVIDED,"
  1607.         @ 13,15 SAY "          SYSTEM WILL PROVIDE '.TXT' EXTENSION"
  1608.         @ 15,15 SAY "        NAME MUST BE NORMAL CP/M FORMAT -- NO LONGER"
  1609.         @ 16,15 SAY "          THAN EIGHT CHARACTERS PLUS '.' AND THREE"
  1610.         @ 17,15 SAY "          CHARACTER EXTENSION"
  1611.         @ 19,15 SAY "        FILE NAME MAY BE PRECEDED BY A DRIVE"
  1612.         @ 20,15 SAY "          DESIGNATION IN FORM '_:'"
  1613.         READ
  1614.  
  1615.         RESET
  1616.  
  1617.         IF DiskStore = ' '
  1618.             STORE 'Junk.TXT' TO DiskStore
  1619.         ENDIF
  1620.  
  1621.         SET ALTERNATE TO &DiskStore
  1622.         SET ALTERNATE ON
  1623.  
  1624.         @ 23, 1 SAY "PROCESSING DOCUMENT "
  1625.         @ 23,25 SAY " OF "
  1626.         @ 23,29 SAY Hits - 1
  1627.         SET CONSOLE OFF
  1628.  
  1629.         SELECT SECONDARY
  1630.         STORE # TO GoBack
  1631.         STORE 1 TO Count
  1632.  
  1633.         DO WHILE .NOT. EOF
  1634.  
  1635.             SET CONSOLE ON
  1636.             @ 23,21 SAY STR(Count,2)
  1637.             @ 23,79
  1638.             SET CONSOLE OFF
  1639.             STORE Count + 1 TO Count
  1640.  
  1641.             STORE TRIM(Loc1) TO Target
  1642.  
  1643.             SELECT PRIMARY
  1644.             FIND &Target
  1645.  
  1646.             ? "TEXT OF SELECTED DOCUMENT " + Number
  1647.             ?
  1648.  
  1649.             DO WHILE .NOT. EOF .AND. Target = TRIM(Number)
  1650.  
  1651.                 ? Line
  1652.                 SKIP
  1653.             ENDDO
  1654.  
  1655.             ?
  1656.             ? '-------------------------------------------------------------------------------'
  1657.             ?
  1658.             ?
  1659.  
  1660.             SELECT SECONDARY
  1661.             SKIP
  1662.         ENDDO
  1663.  
  1664.         SET ALTERNATE OFF
  1665.         SET CONSOLE ON
  1666.  
  1667.         SELECT SECONDARY
  1668.         GOTO GoBack
  1669.  
  1670.     CASE Choice = 'F'
  1671.  
  1672.         FIND &Target
  1673.  
  1674.         ERASE
  1675.         STORE F TO Confirm
  1676.         @  6, 8 SAY "YOU HAVE CHOSEN TO DELETE DOCUMENTS BEGINNING WITH NUMBER" + Number
  1677.         @  8,18 SAY "DO YOU REALLY WISH TO DELETE THESE DOCUMENTS?"
  1678.         @ 10,40 GET Confirm PICTURE '!'
  1679.         READ
  1680.  
  1681.         IF .NOT. Confirm
  1682.             RETURN
  1683.         ENDIF
  1684.  
  1685.         SELECT SECONDARY
  1686.  
  1687.         DO WHILE .NOT. EOF
  1688.  
  1689.             STORE TRIM(Loc1) TO Target
  1690.  
  1691.             SELECT PRIMARY
  1692.             FIND &Target
  1693.  
  1694.             REPLACE Line WITH '**DELETED**'
  1695.             SKIP
  1696.  
  1697.             DO WHILE .NOT. EOF .AND. Target = TRIM(Number)
  1698.  
  1699.                 REPLACE Line WITH ' '
  1700.                 DELETE
  1701.                 SKIP
  1702.             ENDDO
  1703.  
  1704.             SELECT SECONDARY
  1705.             SKIP
  1706.         ENDDO
  1707.  
  1708.     OTHERWISE
  1709.  
  1710.         @  8,30 SAY "INVALID OPTION CHOSEN"
  1711.         @ 18, 1
  1712.         WAIT
  1713. ENDCASE
  1714.  
  1715. SELECT PRIMARY
  1716.  
  1717. RETURN
  1718. ***** File CARDOPTN ***
  1719. *
  1720. *                      SELECT ONE OF THE FOLLOWING OPTIONS:
  1721. *
  1722. *     A.   Print this screen/document
  1723. *
  1724. *     B.   Write this screen/document to disk
  1725. *
  1726. *     C.   Delete this screen/document
  1727. *
  1728. *     D.   Print all screens/documents in this series (starting with this one)
  1729. *
  1730. *     E.   Write all screens/documents in this series (starting with this one)
  1731. *          to disk
  1732. *
  1733. *     F.   Delete all screens/documents in this series (starting with this one)
  1734. *
  1735. *
  1736. *
  1737. *
  1738. *               MAKE YOUR SELECTION:      #Choice
  1739.  
  1740. * CARDOPTN.FMT:  For selection of options.
  1741. *
  1742. @  3,23 SAY "SELECT ONE OF THE FOLLOWING OPTIONS:"
  1743. @  5, 6 SAY "A.   Print this screen/document"
  1744. @  7, 6 SAY "B.   Write this screen/document to disk"
  1745. @  9, 6 SAY "C.   Delete this screen/document"
  1746. @ 11, 6 SAY "D.   Print all screens/documents in this series (starting with this one)"
  1747. @ 13, 6 SAY "E.   Write all screens/documents in this series (starting with this one)"
  1748. @ 14,11 SAY "to disk"
  1749. @ 16, 6 SAY "F.   Delete all screens/documents in this series (starting with this one)"
  1750. @ 20,16 SAY "MAKE YOUR SELECTION:"
  1751. @ 20,42 GET Choice PICTURE '!'
  1752.